package dreamdancetiktokenumsmysql

const (
	//a:0 s；1 b:2
	TagS  = 1  //s
	TagA  = 2  //a
	TagB  = 3  //b
	TagC  = 4  //c
	TagSS = 99 //ss

	// 散件
	DanceActivitiesDrawPrizeConditionsTypeActivitiesHair  = 1 //头发
	DanceActivitiesDrawPrizeConditionsTypeActivitiesFace  = 2 // 脸
	DanceActivitiesDrawPrizeConditionsTypeActivitiesUpper = 5 // 上半身
	DanceActivitiesDrawPrizeConditionsTypeActivitiesLower = 6 // 下半身fa
	DanceActivitiesDrawPrizeConditionsTypeActivitiesShoes = 8 // 鞋子
	//挂件
	DanceActivitiesDrawPrizeConditionsTypeActivitiesLHand           = 11 // 左手持
	DanceActivitiesDrawPrizeConditionsTypeActivitiesRHand           = 12 // 右手持
	DanceActivitiesDrawPrizeConditionsTypeActivitiesHead            = 14 // 头顶
	DanceActivitiesDrawPrizeConditionsTypeActivitiesBack            = 15 // 背后
	DanceActivitiesDrawPrizeConditionsTypeActivitiesBackgroundBoard = 16 // 背景板

	//一级类型
	DanceActivitiesDrawClothing    = 1  //服饰
	DanceActivitiesDrawProps       = 2  //货币
	DanceActivitiesDrawTool        = 3  //工具
	DanceActivitiesDrawPet         = 4  //皮肤
	DanceActivitiesDrawStar        = -1 //欢乐值
	DanceActivitiesDrawGiftPackage = 5  //礼包

	//工具类型
	DanceActivitiesDrawToolTitle                 = 1 //称号
	DanceActivitiesDrawToolEmotions              = 2 //心情
	DanceActivitiesDrawToolEffect                = 3 //玩具
	DanceActivitiesDrawToolBadge                 = 4 //徽章
	DanceActivitiesDrawToolDoubleBackgroundBoard = 5 //双人背景板
	DanceActivitiesDrawToolDoubleHalo            = 6 //双人光环
	DanceActivitiesDrawToolAvatarFrame           = 7 //头像框
	DanceActivitiesDrawToolState                 = 8 //状态

	// 货币类型
	DanceActivitiesDrawMonetaryDecompose = 1 // 分解货币

	// 皮肤
	DanceActivitiesDrawPetSkin   = 1 // 宠物皮肤
	DanceActivitiesDrawSpartsCar = 2 // 跑车皮肤

	// 礼包
	DanceActivitiesDrawGift = 1 // 礼包

	//组合
	DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHF         = 21 // 组合 - 头发 + 脸
	DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHFJ        = 22 // 组合 - 头发 + 脸 + 上身
	DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHFJP       = 23 // 组合 - 头发 + 脸 + 上身 + 下身
	DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHFJPS      = 24 // 组合 - 头发 + 脸 + 上身 + 下身 + 鞋
	DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHJ         = 25 // 组合 - 头发 + 上身
	DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHJP        = 26 // 组合 - 头发 + 上身 + 下身
	DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHJPS       = 27 // 组合 - 头发 + 上身 + 下身 + 鞋
	DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitJP         = 28 // 组合 - 上身 + 下身
	DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitJPS        = 29 // 组合 - 上身 + 下身 + 鞋
	DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitPS         = 30 // 组合 - 下身 + 鞋
	DanceActivitiesDrawPrizeConditionsTypeActivitiesPelvisLocal    = 41 // 腰附加
	DanceActivitiesDrawPrizeConditionsTypeActivitiesSpine1Local    = 42 // 胸附加
	DanceActivitiesDrawPrizeConditionsTypeActivitiesRootLocal      = 43 // 脚底附加
	DanceActivitiesDrawPrizeConditionsTypeActivitiesPelvisWorld    = 51 // 腰挂载
	DanceActivitiesDrawPrizeConditionsTypeActivitiesSpine1World    = 52 // 胸挂载
	DanceActivitiesDrawPrizeConditionsTypeActivitiesRootWorld      = 53 // 脚底挂载
	DanceActivitiesDrawPrizeConditionsTypeActivitiesRootWorldLeft  = 54 // 左脚底
	DanceActivitiesDrawPrizeConditionsTypeActivitiesRootWorldRight = 55 // 右脚底
	DanceActivitiesDrawPrizeConditionsTypeActivitiesHalo           = 90 // 光环
	DanceActivitiesDrawPrizeConditionsTypeActivitiesPiece          = 80 // 碎片
	//挂件
	DanceActivitiesDrawPrizeConditionsTypeActivitiesPresentLHand = 100 // 送礼出现的 额外挂载 左手持
	DanceActivitiesDrawPrizeConditionsTypeActivitiesPresentRHand = 200 // 送礼出现的 额外挂载 右手持
	DanceActivitiesDrawPrizeConditionsTypeActivitiesPresentHead  = 300 // 送礼出现的 额外挂载 头顶
	DanceActivitiesDrawPrizeConditionsTypeActivitiesPresentBack  = 400 // 送礼出现的 额外挂载 背后 Max }
	DanceActivitiesDrawPrizeConditionsTypeActivitiesScore        = -1  // 送礼出现的 额外挂载 背后 Max }

)

type DanceActivitiesDrawPrizeConditionsEnums struct {
}

var DanceActivitiesDrawPrizeConditionsEnumsObject DanceActivitiesDrawPrizeConditionsEnums

func (e DanceActivitiesDrawPrizeConditionsEnums) Tag() []int {
	return []int{
		TagA,
		TagS,
		TagB,
		TagC,
		TagSS,
	}
}

func (e DanceActivitiesDrawPrizeConditionsEnums) TagMap() map[int]int {
	m := make(map[int]int)
	for _, s := range e.Tag() {
		m[s] = s
	}
	return m
}

func (e DanceActivitiesDrawPrizeConditionsEnums) TagString(tag int) string {
	switch tag {
	case TagA:
		return "a" //
	case TagS:
		return "s" //
	case TagB:
		return "b" //
	case TagC:
		return "c" //
	case TagSS:
		return "ss" //
	default:
		return ""
	}
}

//public enum ClothPart : int { None = 0,
// 散件
//Hair = 1//头发
//Face = 2// 脸
//Upper = 5// 上半身
//Lower = 6// 下半身fa
//Shoes = 8// 鞋子

//挂件
//LHand = 11// 左手持
//RHand = 12// 右手持
//Head = 14// 头顶
//Back = 15// 背后
//组合
//SuitHF = 21// 组合 - 头发 + 脸
//SuitHFJ = 22// 组合 - 头发 + 脸 + 上身
//SuitHFJP = 23// 组合 - 头发 + 脸 + 上身 + 下身
//SuitHFJPS = 24// 组合 - 头发 + 脸 + 上身 + 下身 + 鞋
//SuitHJ = 25// 组合 - 头发 + 上身
//SuitHJP = 26// 组合 - 头发 + 上身 + 下身
//SuitHJPS = 27// 组合 - 头发 + 上身 + 下身 + 鞋
//SuitJP = 28// 组合 - 上身 + 下身
//SuitJPS = 29// 组合 - 上身 + 下身 + 鞋
//SuitPS = 30// 组合 - 下身 + 鞋
//PelvisLocal = 41// 腰附加
//Spine1Local = 42// 胸附加
//RootLocal = 43// 脚底附加
//PelvisWorld = 51// 腰挂载
//Spine1World = 52// 胸挂载
//RootWorld = 53// 脚底挂载
//Halo = 90// 光环
//挂件
//PresentLHand = 100// 送礼出现的 额外挂载 左手持
//PresentRHand = 200// 送礼出现的 额外挂载 右手持
//PresentHead = 300// 送礼出现的 额外挂载 头顶
//PresentBack = 400// 送礼出现的 额外挂载 背后 Max }

func (e DanceActivitiesDrawPrizeConditionsEnums) ConditionsType() []int {
	return []int{
		DanceActivitiesDrawPrizeConditionsTypeActivitiesHair,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesFace,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesUpper,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesLower,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesShoes,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesLHand,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesRHand,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesHead,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesBack,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesBackgroundBoard,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHF,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHFJ,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHFJP,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHFJPS,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHJ,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHJP,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHJPS,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitJP,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitJPS,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitPS,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesPelvisLocal,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesSpine1Local,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesRootLocal,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesPelvisWorld,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesSpine1World,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesRootWorld,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesRootWorldLeft,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesRootWorldRight,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesHalo,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesPresentLHand,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesPresentRHand,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesPresentHead,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesPresentBack,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesPiece,
		DanceActivitiesDrawPrizeConditionsTypeActivitiesScore,
	}
}

func (e DanceActivitiesDrawPrizeConditionsEnums) ConditionsTypeMap() map[int]string {
	m := make(map[int]string)
	for _, s := range e.ConditionsType() {
		m[s] = e.ConditionsTypeString(s)
	}
	return m
}

func (e DanceActivitiesDrawPrizeConditionsEnums) ConditionsTypeString(tag int) string {
	switch tag {
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesHair:
		return "头发"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesFace:
		return "脸"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesUpper:
		return "上半身"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesLower:
		return "下半身"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesShoes:
		return "鞋子"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesLHand:
		return "左手持"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesRHand:
		return "右手持"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesHead:
		return "头顶"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesBack:
		return "背后"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesBackgroundBoard:
		return "背景板"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHF:
		return "头发+脸"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHFJ:
		return "头发+脸+上身"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHFJP:
		return "头发+脸+上身+下身"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHFJPS:
		return "头发+脸+上身+下身+鞋"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHJ:
		return "头发+上身"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHJP:
		return "头发+上身+下身"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitHJPS:
		return "头发+上身+下身+鞋"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitJP:
		return "上身+下身"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitJPS:
		return "上身+下身+鞋"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesSuitPS:
		return "下身+鞋"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesPelvisLocal:
		return "腰附加"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesSpine1Local:
		return "胸附加"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesRootLocal:
		return "脚底附加"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesPelvisWorld:
		return "腰挂载"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesSpine1World:
		return "胸挂载"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesRootWorld:
		return "脚底挂载"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesRootWorldLeft:
		return "左脚底"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesRootWorldRight:
		return "右脚底"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesHalo:
		return "光环"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesPresentLHand:
		return "额外挂载 左手持"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesPresentRHand:
		return "额外挂载 右手持"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesPresentHead:
		return "额外挂载 头顶"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesPresentBack:
		return "额外挂载 背后"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesPiece:
		return "碎片"
	case DanceActivitiesDrawPrizeConditionsTypeActivitiesScore:
		return "欢乐值"
	default:
		return "公有"
	}
}

func (e DanceActivitiesDrawPrizeConditionsEnums) ActivitiesDrawType() []int {
	return []int{
		DanceActivitiesDrawClothing,
		DanceActivitiesDrawProps,
		DanceActivitiesDrawTool,
		DanceActivitiesDrawStar,
		DanceActivitiesDrawPet,
		DanceActivitiesDrawGiftPackage,
	}
}

func (e DanceActivitiesDrawPrizeConditionsEnums) ActivitiesDrawMap() map[int]string {
	m := make(map[int]string)
	for _, s := range e.ActivitiesDrawType() {
		m[s] = e.ActivitiesDrawString(s)
	}
	return m
}

func (e DanceActivitiesDrawPrizeConditionsEnums) ActivitiesDrawString(tag int) string {
	switch tag {
	case DanceActivitiesDrawClothing:
		return "服饰"
	case DanceActivitiesDrawProps:
		return "货币"
	case DanceActivitiesDrawTool:
		return "工具"
	case DanceActivitiesDrawStar:
		return "欢乐值"
	case DanceActivitiesDrawPet:
		return "皮肤"
	case DanceActivitiesDrawGiftPackage:
		return "礼包"
	default:
		return "其他"
	}
}

func (e DanceActivitiesDrawPrizeConditionsEnums) ActivitiesDrawTool() []int {
	return []int{
		DanceActivitiesDrawToolTitle,
		DanceActivitiesDrawToolEmotions,
		DanceActivitiesDrawToolEffect,
		DanceActivitiesDrawToolBadge,
		DanceActivitiesDrawToolDoubleBackgroundBoard,
		DanceActivitiesDrawToolDoubleHalo,
		DanceActivitiesDrawToolAvatarFrame,
		DanceActivitiesDrawToolState,
	}
}

func (e DanceActivitiesDrawPrizeConditionsEnums) ActivitiesDrawMonetary() []int {
	return []int{
		DanceActivitiesDrawMonetaryDecompose,
	}
}

func (e DanceActivitiesDrawPrizeConditionsEnums) ActivitiesDrawGift() []int {
	return []int{
		DanceActivitiesDrawGift,
	}
}

func (e DanceActivitiesDrawPrizeConditionsEnums) ActivitiesDrawPet() []int {
	return []int{
		DanceActivitiesDrawPetSkin,
		DanceActivitiesDrawSpartsCar,
	}
}

func (e DanceActivitiesDrawPrizeConditionsEnums) ActivitiesDrawToolMap() map[int]string {
	m := make(map[int]string)
	for _, s := range e.ActivitiesDrawTool() {
		m[s] = e.ActivitiesDrawToolString(s)
	}
	return m
}

func (e DanceActivitiesDrawPrizeConditionsEnums) ActivitiesDrawMonetaryMap() map[int]string {
	m := make(map[int]string)
	for _, s := range e.ActivitiesDrawMonetary() {
		m[s] = e.ActivitiesDrawMonetaryString(s)
	}
	return m
}

func (e DanceActivitiesDrawPrizeConditionsEnums) ActivitiesDrawGiftMap() map[int]string {
	m := make(map[int]string)
	for _, s := range e.ActivitiesDrawGift() {
		m[s] = e.ActivitiesDrawGiftString(s)
	}
	return m
}

func (e DanceActivitiesDrawPrizeConditionsEnums) ActivitiesDrawPetMap() map[int]string {
	m := make(map[int]string)
	for _, s := range e.ActivitiesDrawPet() {
		m[s] = e.ActivitiesDrawPetString(s)
	}
	return m
}

func (e DanceActivitiesDrawPrizeConditionsEnums) ActivitiesDrawToolString(tag int) string {
	switch tag {
	case DanceActivitiesDrawToolTitle:
		return "称号"
	case DanceActivitiesDrawToolEmotions:
		return "心情"
	case DanceActivitiesDrawToolEffect:
		return "玩具"
	case DanceActivitiesDrawToolBadge:
		return "徽章"
	case DanceActivitiesDrawToolDoubleBackgroundBoard:
		return "双人背景板"
	case DanceActivitiesDrawToolDoubleHalo:
		return "双人光环"
	case DanceActivitiesDrawToolAvatarFrame:
		return "头像框"
	case DanceActivitiesDrawToolState:
		return "状态"
	default:
		return "其他"
	}
}

func (e DanceActivitiesDrawPrizeConditionsEnums) ActivitiesDrawMonetaryString(tag int) string {
	switch tag {
	case DanceActivitiesDrawMonetaryDecompose:
		return "分解货币"
	default:
		return "其他"
	}
}
func (e DanceActivitiesDrawPrizeConditionsEnums) ActivitiesDrawGiftString(tag int) string {
	switch tag {
	case DanceActivitiesDrawGift:
		return "礼包"
	default:
		return "其他"
	}
}

func (e DanceActivitiesDrawPrizeConditionsEnums) ActivitiesDrawPetString(tag int) string {
	switch tag {
	case DanceActivitiesDrawPetSkin:
		return "宠物皮肤"
	case DanceActivitiesDrawSpartsCar:
		return "跑车皮肤"
	default:
		return "其他"
	}
}
